package com.iuv.shortpromotion.service;

import com.iuv.shortpromotion.domain.DemoSmsPromotionTbl;

import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;


/**
 * 推广活动 业务接口类
 */
public interface DemoSmsPromotionService {
    /**
     * 分布搜索推广活动记录
     *
     * @param demoSmsPromotionTbl
     * @param pageable
     * @return
     */
    Page<DemoSmsPromotionTbl> listSearch(DemoSmsPromotionTbl demoSmsPromotionTbl, Pageable pageable);

    /**
     * 创建推广活动
     *
     * @param demoSmsPromotionTbl
     * @return
     */
    DemoSmsPromotionTbl insert(DemoSmsPromotionTbl demoSmsPromotionTbl);

    void save(DemoSmsPromotionTbl demoSmsPromotionTbl);
    /**
     * 修改 推广活动
     * @param demoSmsPromotionTbl
     * @return
     */

    DemoSmsPromotionTbl update(DemoSmsPromotionTbl demoSmsPromotionTbl);
    /**
     * 删除
     *
     * @param promotionId
     */
    void delete(Integer promotionId);

    /**
     *   根据 promotionId查找
     * @param promotionId
     * @return
     */
    DemoSmsPromotionTbl findByPromotionId(Integer promotionId);

     /**
     * 检查活动时间是否结束
     * @param demoSmsPromotionTbl
     * @return
     */
    boolean checkPromotionEnd(DemoSmsPromotionTbl demoSmsPromotionTbl);

    /**
     * 群发推广短信
     */
    void sendBatchSms(DemoSmsPromotionTbl demoSmsPromotionTbl);

}
